Method and apparatus for dynamic device pairing

ABSTRACT

A communication system, method, and components are described. Specifically, a communication system that supports dynamic device pairing of communication devices is described. Such pairing is accomplished using a feature or pairing server, without requiring modification to associated communication endpoints. Moreover, sequenced applications can be applied for all communication endpoints when pairing is in effect.

CROSS REFERENCE TO RELATED APPLICATION

The present application is a divisional of U.S. patent application Ser.No. 13/595,626, filed Aug. 27, 2012, entitled “METHOD AND APPARATUS FORDYNAMIC DEVICE PAIRING”, which is incorporated herein by this referencein its entirety.

FIELD

The disclosure relates to pairing communication devices within acommunication system.

BACKGROUND

It is often advantageous to allow a user of a communication system toaccess different communication devices. For example, a user associatedwith a desk phone in the user's office may wish to access a phone in adifferent room. As a further example, users may have need of differentcommunication capabilities for different communications, and thosecapabilities may be best supported by different communication devices.In such situations, it is often desirable to present the device used tosupport the communication (i.e., the media stream) to othercommunication devices and/or the communication system as the user'spersonal device. Similar situations arise when advanced call control isdesired from a softclient running on a computing device.

Systems have been developed that allow a user to forward calls from acommunication device associated with a communication address, to analternate communication device. However, communications placed from thealternate device are typically not presented to called parties as beingassociated with the communication address of the user's primary device.In addition, communications conducted in connection with an alternatedevice using call forwarding are generally made without the applicationof call features or restrictions associated with the primary device.

Still other systems have been developed that pair an alternate device toa user's primary device. For example, systems have been developed tosupport telecommuters, to enable users to present a consistentcommunication address to called and calling parties. However, suchsystems suffer from deficiencies with respect to the application ofcalling features and restrictions. For example, where pairing isaccomplished by a mechanism outside of a server responsible for applyingother features and restrictions, that other server may be unaware of apairing that has been implemented. As a result, the features andrestrictions applied to a call involving paired devices may be thoseassociated with a paired device, rather than a pairing device or boththe pairing and paired devices. This can in turn result in a failure toapply restrictions that should be enforced with respect to the calland/or in desired features being unavailable.

SUMMARY

Embodiments of the present disclosure are directed to solving these andother problems and disadvantages of the prior art. According toembodiments of the present disclosure, systems and methods are providedthat operate to pair communication devices. Pairing is accomplished suchthat features and restrictions associated with both the pairing andpaired communication devices can be applied. Features and restrictionscan be applied even if the mechanism that implements the pairing isseparate from the server or other device responsible for providingfeatures and/or enforcing restrictions associated with the devices.Moreover, a pairing device may continue to exercise control of acommunication associated with a paired device, even when the mediastream is directed to the paired device.

A system in accordance with embodiments of the present disclosureincludes a pairing server or module that provides or executes a dynamicdevice pairing (DDP) application or function. The pairing serveroperates to implement the pairing of two communication devices. Inparticular, both the pairing and paired devices of a communicationdevice pair are associated with the call. However, the media is routedto the paired device by using the session description protocol (SDP)identifier for the paired device. The pairing device is placed in a farend hold. Accordingly, a media path is established to the paired device,while control is maintained at the pairing device. In addition, to otherendpoints in the call, the pairing device appears as a party to thecall, while the paired device does not. In accordance with embodimentsof the present disclosure, the pairing can be implemented at the requestof a user, for example by providing user input at the pairing devicethat is sent to the pairing server to effect the pairing.

When a user associated with paired devices receives an inbound call, thedynamic device pairing application may be invoked after all otherterminal applications associated with the inbound call have beeninvoked. The INVITE message for the call is sent to both the pairing andpaired devices. When the user answers on the paired device, the paireddevice's SDP answer is sent back to the communication device of thecaller, and a media channel is established between the paired device andthe caller's communication device. The control dialog to the controllingpairing device will also be established, but it will appear to thepairing device that it is in far end hold. The pairing device is thusable to control the call while the user is talking on the paired device.

When an outbound call is placed by a user associated from a pairingdevice, the dynamic device pairing application or function may beorigination sequenced before all other sequential applications. Forexample, the origination sequence can be paused while the DDPapplication initiates a call to the paired device. When the user answersat the paired device, the DDP application issues a REFER message, askingthat paired device initiate a call back to the DDP application with anSDP offer. This SDP offer is substituted for that sent by the pairingdevice, and the origination sequence can be resumed. Alternatively, aslow start INVITE can be used where the media is established after theSIP threeway handshake (INVITE/2000K/ACK). All remaining originationapplications (e.g., a call recording application) for the calling userare then sequenced. When the far end answers, the 200 OK message withthe SDP answer is sent along to the paired device and a media path isestablished between the paired device and the called device. The pairingdevice is placed on far end hold, with the result that the pairingdevice is capable of controlling the call while the media is sent to thepaired device to enable the user to talk using the paired device. In theexample of a call recording application, the call recording applicationcould be provisioned to record all calls that the pairing user makes orreceives, and the architecture described herein would allow that tohappen even for calls where the media goes to the paired device.

Additional features and advantages of embodiments of the presentdisclosure will become more readily apparent from the followingdescription, particularly when taken together with the accompanyingdrawings.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a block diagram depicting components of a communication systemin accordance with embodiments of the present disclosure;

FIG. 2 is a block diagram depicting a pairing server providing a dynamicdevice pairing function in accordance with embodiments of the presentdisclosure;

FIGS. 3A-1, 3A-2, 3B-1 and 3B-2 illustrate call flow scenarios inaccordance with embodiments of the present disclosure; and

FIG. 4 is a flowchart illustrating aspects of a method for providingdynamic device pairing in accordance with embodiments of the presentdisclosure.

DETAILED DESCRIPTION

FIG. 1 is a block diagram depicting components of a communication system100 capable of implementing dynamic device pairing in accordance withembodiments of the present disclosure. In general, the system 100includes a communication server 104 having a user relation element 102,one or more application servers 108 providing one or more applications114, and a pairing server 112 providing a dynamic device pairing (DDP)application 116. In some embodiments, one, some, or all of the servers104, 108, 112 are associated with an enterprise communication system106. The communication server 104 may employ the user relation element102 to identify application sequences for different users (e.g.,according to user preferences, administrative rules, etc.). The userrelation element 102 may include a table or similar type of datastructure that maps a user's communication preferences to a sequence ofapplications that are to be invoked for the user when the user eitherplaces an outbound call or receives an inbound call. Upon receiving acommunication-initiating message (e.g., an INVITE message), thecommunication server 104 may employ the user relation element 102 todetermine the next application to include in the calling or calleduser's application sequence and, based on such a determination, routethe communication-initiating message to the appropriate server 108, 112.

Stated another way, the communication server 104 may facilitate theestablishment of various application sequences for communicationsessions of users belonging to the enterprise communication system 106.In some embodiments, the communication server 104 may establish theapplications as Back-to-Back User Agents (B2BUAs) or proxies in thesignaling and/or media path of a communication session. The manner inwhich the appropriate applications are sequenced will be described infurther detail herein. These sequenced applications 114, 116 can beprovided to select and control the running of services or featuresassociated with a communication session between communication devices120, and/or to enforce restrictions associated with communicationdevices 120.

The DDP application 116 represents one specific type of application thatenables a user 112 to dynamically pair one communication device 120 withanother communication device 120. Examples of suitable types of otherapplications 114 include, without limitation, call recordingapplications, Find-me/Follow-me applications, Extension to Cellular(EC-500) applications, call forwarding applications, coverageapplications (e.g., voicemail, transfer to assistant, etc.), encryptionapplications, security applications, call log applications, call historyapplications, presence applications, context applications,text-to-speech applications, speech-to-text applications, and so on.

Although only a single communication server 104 is depicted in FIG. 1,two or more communication servers 104 may be provided in a single system100 or enterprise network portion 106 of a system 100. A communicationserver 104 can be configured to include user communication preferencesand/or restrictions vis-à-vis the user relation element 102, which map,for a corresponding (enterprise subscriber) user, a set of communicationpreferences to be invoked for an incoming and/or outgoing contact orcommunication for each user for whom it is authoritative. The userrelation element 112 may additionally include a feature sequencer thatis configured to refer to the data structure that maps a user tocommunication preferences and then instantiate communication preferencesfor calling and called users and/or communication devices or endpoints120. The communication preferences for a particular user 122 and/orendpoint 120 are referenced by the feature sequencer functionality ofthe user relation element 102 to determine which, if any, featuresshould be incorporated into a communication session for the user and/orcommunication device. The feature sequencer functionality caninstantiate the communication features for the communication session byrouting the communication-initiation message(s) to the appropriateapplications 114, 116 at the appropriate servers 108, 112.

The communication server 104 may be used to help establish communicationsessions and to provide features and/or enforce restrictions withrespect to communication sessions. The communication server 104 mayinclude a private branch exchange (PBX), an enterprise switch, anenterprise server, combinations thereof, or other types oftelecommunications system switch or server. The communication server 104is, in some embodiments, configured to execute telecommunicationfunctions such as the suite of Avaya AURA™ applications of Avaya Inc.,including Communication Manager™, Avaya AURA CommunicationManager™Communication Manager Branch™, Session Manager™, andcombinations thereof. Features and restrictions can be provided by thecommunication server 104 through the incorporation of one or moresequenced applications 114, 116 in a communication session.

Although depicted as being separate servers, it should be appreciatedthat functions of any particular server can be incorporated into anyother server without departing from the scope of the present disclosure.For example, the application server 108 may incorporate the DDPapplication 116 or the pairing server 112 may comprise various otherapplications 114. As another example, the communication server 104 maycomprise the functionality of the application server 108 and/or pairingserver 112.

Once an application sequence is determined by the user relation element102 for a calling and/or called user 122 and/or communication device120, the communication server 104 passes the communication-initiatingmessage (e.g., an INVITE message) to a first application 114, 116 in theapplication sequence, thereby allowing the first application 114, 116 todetermine the parameters of the communication session, insert itselfinto the control and/or media stream of the communication session, andthereby bind itself to the communication session.

Once the first application 114, 116 has established itself into thecommunication session, the first application 114, 116 either passes thecommunication-initiating message back to the communication server 104 toso that the user relation element 102 can identify the next application114, 116 in the application sequence and re-route thecommunication-initiating message to appropriate server 108, 112. In someembodiments, it may be desirable to have each application 114, 116 passthe communication-initiating message back to the communication server104 so that each application 114, 116 can operate independently of oneanother (e.g., does not have to know about any other application 114,116 in the communication system 100). However, it may also be possibleto have one application 114, 116 pass the communication-initiatingmessage to the next application 114, 116 directly. Alternatively or inaddition, the message may be redirected, rejected, or the like.Moreover, parties and/or media servers may be added to the call by anapplication 114, 116, depending upon the functions provided by theapplication 114, 116.

As can be appreciated by one of skill in the art, this process continuesuntil all sequenced applications 114, 116 for implementing preferencesand/or restrictions with respect to users 122 and/or communicationdevices 120 have been applied to the communication session.

As noted above, the pairing server 112 in accordance with embodiments ofthe present disclosure provides a DDP application or function 116. Asdescribed in greater detail elsewhere herein, the DDP application 116facilitates the pairing of communication devices 120 for which dynamicdevice pairing has been provisioned within the pairing server 112. Moreparticularly, the DDP application 116 executed by the pairing server 112enables two associated endpoints 120, more particularly a pairing and apaired endpoint 120, to participate in a communication session withrespect to control signals for that session, while providing media onlyto the paired device 120. In addition, the pairing methodology disclosedherein enables other sequenced applications to apply their originationfunctions even on the call between the DDP application and the paireddevice. For instance, a primary communication feature server can ensurethat the pairing user is authorized to call the paired device eventhough that feature server is separate from the DDP application.

The system 100 also includes a plurality of communication devices orendpoints 120. In particular, the pairing server 112 may be associatedwith a first or pairing communication device 120 a and a second orpaired communication device 120 b. The system 100 may also include atleast one additional communication device 120. For example, the system100 can include a third communication device 120 c, also referred toherein as a far end communication device 120 c.

A communication device or endpoint 120 may correspond to a user agent(UA) or multiple UAs of users. Examples of communication devices 120include, without limitation, a telephone, a soft phone, a cellularphone, a multi speaker communication device (e.g., a conference phone),a video phone, a personal computer (PC), a laptop computer, a tabletcomputer, a personal digital assistant (PDA), a smart phone, a thinclient, or the like. It should be appreciated that a communicationdevice 120 may be configured to support single or multi userinteractions with other communication devices 120 within an enterprise,as well as other communication devices 120 that are external to theenterprise.

In accordance with embodiments of the present disclosure, and asdescribed herein, a user 122 of a first communication device (thepairing communication device) 120 a may provision the DDP application116 running on or executed by the pairing server 112 such that the firstcommunication device 120 a is paired to a second communication device(the paired communication device) 120 b. More particularly, the pairingoperation enables the user 122 to present the address associated withthe first communication device 120 a to other communication devices 120that are party to a communication session (e.g., the third communicationdevice 120 c) and to maintain control of such communications through thefirst communication device 120 a, while establishing the media paththrough the second communication device 120 b. Accordingly, the user 122can operate his or her pairing communication device 120 a to exercisecontrol over the communication session, while using the pairedcommunication device 120 b to receive and provide media (e.g., audiocontent). Moreover, embodiments of the present disclosure accomplishsuch pairing while maintaining the application of sequenced applications114, 116 that provide features and/or that apply restrictions to callsassociated with the first communication device 120 a and/or the secondcommunication device 120 b. In addition, such pairing is accomplishedthrough the provision of the pairing server 112 and the DDP application116, without requiring modifications to SIP enabled communicationdevices 120 or other components of the system 100. Invocation of the DDPapplication 116 can be easily implemented by updating a user'scommunication preferences in the user relation element 102 of thecommunication server 104.

Various nodes or devices included in the system 100 can beinterconnected by one or more communication networks 124. As examples,but without limitation, a communication network 124 may comprise anytype and any number of communication mediums and devices which arecapable of supporting communication sessions, such as voice calls, videocalls, TTY calls, multimedia sessions, or the like. The communicationnetwork 124 may include a local area network (LAN), a wide area network(WAN), a session initiation protocol (SIP) network, and/or any othertype of packet switched or circuit switched network known in the art. Inaddition, a first part of the network 124 can operate to interconnectone or both of the first 120 a and second 120 b communication devices tothe pairing server 112 and in turn to the communication server 104. Thefirst part of the network 124 may, as an example, comprise an enterprisenetwork. A second part of the network 124 may connect the communicationserver 104 to the third communication device 120 c.

FIG. 2 illustrates components of an exemplary pairing server 112 inaccordance with embodiments of the present disclosure. The pairingserver 112 in accordance with embodiments of the present disclosureprovides DDP services to registered communication devices 120 for whichpairing has been provisioned. In general, the pairing server 112 cancomprise a general purpose computer or server device that providesvarious communication functions and features. As a further example, thepairing server 112 may comprise a particular instance of a communicationserver 104, or may even be implemented by or as part of a communicationserver 104, instead of as a separate system component. Accordingly, thepairing server 112 can include a processor 204. The processor 204 maycomprise a general purpose programmable processor or controller forexecuting application programming or instructions. As a further example,the processor 204 may comprise a specially configured applicationspecific integrated circuit (ASIC) or other integrated circuit, adigital signal processor, a hard wired electronic or logic circuit suchas a discrete element circuit, a programmable logic device or gatearray, special purpose computer, or the like. The processor 204generally functions to run programming code or instructions implementingvarious functions of the pairing server 112.

The pairing server 112 may also include memory 208 for use in connectionwith the execution of application programming by the processor 204, andfor the temporary or long term storage of program instructions and/ordata. As examples, the memory 208 may comprise RAM, SDRAM or other solidstate memory. Alternatively or in addition, data storage 212 may beprovided. In accordance with embodiments of the present disclosure, datastorage 212 can contain programming code or instructions implementingvarious of the applications or functions executed or performed by thepairing server 112. Like the memory 208, the data storage 212 maycomprise a solid state memory device or devices. Alternatively or inaddition, the data storage 212 may comprise a hard disk drive or otherrandom access memory.

In accordance with embodiments of the present disclosure, the datastorage 212 can include various applications and data. For example, thedata storage 212 can include the DDP application 116, the execution ofwhich by the processor 204 implements functions of the pairing server112 in implementing dynamic device pairing. In addition, the datastorage 212 can maintain data regarding registered communication devices120, and provisioning data 216 for pairing communication devices 120 toone another.

The pairing server 112 can additionally include a communicationinterface or interfaces 220. The communication interface 220 may provideconnectivity between the pairing server 112 and other components of thesystem 100, including the communications server 104 and communicationdevices 120, either directly or through one or more networks 124.

FIGS. 3A-1, 3A-2, 3B-1 and 3B-2 illustrate a communication session orcall flow in accordance with embodiments of the present disclosure. Moreparticularly, the call flow for an outgoing call made from a pairingdevice 120 a, shown in the example of FIG. 3A-1 and 3A-2 as a flaredevice 120 a, after provisioning data 216 has been provided to thepairing server 112, is shown. This provisioning data identifies thepaired device 120 b, and includes an instruction from the user 122 toutilize device 120 pairing. Initially, an INVITE message is sent fromthe pairing device 120 a to the pairing server 112 to originate the call(304).

It should be noted that the communication server 104/user relationelement 102 is not depicted in FIGS. 3A-1, 3A-2, 3B-1 and 3B-2 forsimplicity. However, as discussed above, the feature sequencerfunctionality of the user relation element 102 may dictate that thecommunication server 104/user relation element 102 is between thepairing device 120 a, pairing server 112, paired device 120 b,application server 108 (referred to as a primary Feature Server (FS) inFIGS. 3A-1, 3A-2, 3B-1 and 3B-2), and other communication devicesdepicted herein. The communication server 104/user relation element 102has not been shown to enhance the understanding of the dynamic devicepairing concepts described herein. Those skilled in the art willappreciate how the communication server 104/user relation element 102can be inserted into the message path between each device to ensureproper control of the communication sessions is maintained.

The pairing server 112 then pauses the origination sequence and sends anINVITE message to the paired device 120 b with a fake or placeholder SDPassociated therewith (308). Alternatively, the pairing server 112 maysend the SDP offer from the pairing device 120 a. The INVITE message canindicate in a reason header that the call to the paired device 120 c isa service link. As used herein, the term “service link” should beunderstood to include any data or media connection used between thepairing device 120 a and paired device 120 b to enable control of onedevice with inputs received at the other device. The “service link” maycorrespond to a unidirectional or bidirectional communication link.

As a result, the communication server 104 can exclude this link frombandwidth calculations and to report a call topology change if there wasany mid-call control on the paired device 120 c. When the user answersat the paired device 120 b, the DDP application 116 issues a REFERmessage asking that the user agent associated with the pairedcommunication device 120 b initiate a call back to the DDP application116 with an SDP offer (312). In an alternative embodiment, a “slowstart” INVITE is used with the paired device 120 b. Specifically, theinitial INVITE is sent with no SDP offer and the 200 OK from the paireddevice 120 b has an SDP offer. The ACK message, which isn't sent untilthe called party 120 c answers with a 200 OK message, then has the SDPanswer information from the called party 120 c. It should be appreciatedthat the utilization of the “slow start” INVITE achieves a simpler callflow, but the drawback is that the caller doesn't hear the ringback onthe paired device 120 b.

The DDP application 116 substitutes the SDP offer from the pairedcommunication device 120 b for the SDP offer that was sent by thepairing communication device 120 a, and the origination sequence isresumed. Thereafter, the remaining origination applications 114 withinthe primary FS 108 or any other application server for the calling userare then sequenced by the communication server 104 and user relationelement 102. Notably, the INVITE message passed to the communicationserver 104 is associated with the initial invite from the pairingcommunication device 120 a, but with the SDP of the paired communicationdevice 120 b. Accordingly, the INVITE message passed to the calledcommunication device 120 (e.g., the paired communication device 120 c)(316) shows the pairing communication device 120 a as the originatingdevice but has the media offer from the paired device. Since the pairingcommunication device 120 a has an active dialog, it can control the callwhile the user is talking on the paired communication device 120 b, asthe media path is established between the paired communication device120 b and the called communication device 120 c. The 200 OK responsewhen the called device 120 c answers (320) is sent to the paired device120 b (324), with the called device SDP answer and an indication thatthis is a service link call. A 200 OK is also sent to the pairing devicewith a “hold” SDP.

With respect to an inbound call to the first or pairing communicationdevice 120 a, the DDP application 116 is generally invoked after allother terminal applications 114 have been invoked by the communicationserver 104/user relation element 102. The call flow for an incoming callplaced to a pairing device 120 a that is associated with a paired device120 b is illustrated in the example of FIGS. 3B-1 and 3B-2. In thisscenario, the calling party, for example using a third communicationdevice 120 c, places a call that results in an INVITE message being sentto the pairing server 112 with the SDP offer of the third communicationdevice 120 c (346). That INVITE message is sent to the target device,which in this case is the pairing device 120 a (350). The pairing server112 also sends an INVITE message with the SDP offer of the thirdcommunication device 120 c to the paired communication device 120 b(354). This calling identity in this INVITE to the paired device is setto the identity of the originally called user. This invokes that user'sorigination applications so that they can ensure that the pairing useris authorized to call the paired device. The result is that both thefirst 120 a and second 120 b communication devices are now ringing. Theuser 122 answers on the paired communication device 120 b, with theresult that a 200 OK message with the SDP of the paired communicationdevice 120 b is sent back to the pairing server 112 (358). The SDP ofthe paired device 120 b is then included in messages passed by thepairing server 112 to the calling or third communication device 120 c,establishing a media or speech path between the paired communicationdevice 120 b and the calling communication device 120 c (362). Inaddition, a REFER message is sent by the pairing server 112 to thepairing or first communication device 120 a to request auto answer ofthe call made to that communication device 120 a by the communicationserver 112 (366). The auto answer of the call by the first communicationdevice 120 a establishes a control path for the communication sessionthat extends to the pairing or first communication device 120 a. Inaddition to being associated with the SDP of the paired or secondcommunication device 120 b, messages passed as part of the callproviding an exchange of media between the second communication device120 b and the third communication device 120 c are associated with thecaller ID of the pairing or first communication device 120 a.Accordingly, sequenced applications 108 can be applied by acommunication server 104 (see FIG. 1) in the call path. Therefore,features and restrictions associated with all of the call orcommunication session endpoints, in this case communication devices 120a, 120 b, and 120 c, can be applied. In an alternate embodiment, theuser could answer on their pairing endpoint and the DDP applicationcould be configured to send a REFER message to the paired device with anauto answer request.

In both the outbound and inbound cases, the call to the pairedcommunication device 120 b is origination sequenced on behalf of thepairing user. This is in addition to sequencing with respect to thepairing device 120 a. This ensures that the user doesn't circumventtheir origination restrictions. For example, a do not call listapplication can be applied to assert restrictions. In addition, thepairing communication device 120 a can signal call control operations asif it were operating in the absence of a pairing with the pairedcommunication device 120 b. Accordingly, the call or media path to thepaired communication device 120 b follows the control dialog establishedin connection with the pairing communication device 120 a. In addition,the establishment of the media path with the paired communication device120 b is performed through SDP substitution by the DDP application 116.Moreover, such SDP substitution is maintained by the pairing server 112throughout the duration of the call.

Aspects of the operation of a system 100 in accordance with embodimentsof the present invention are further described in connection with FIG.4. More particularly, at step 404, the DDP application 116 isprovisioned. Provisioning the DDP application 116 can includeassociating a registered communication device (e.g., the pairingcommunication device 120 a) with a paired communication device 120(e.g., communication device 120 b). Such provisioning can beaccomplished through the pairing communication device 120 a, or anyother device capable of receiving input from the user and deliveringsuch input to the DDP application 116. Moreover, provisioning caninclude the user 122 logging into a user portal of the pairing server112, through which the user 122 can activate the DDP service provided bythe DDP application 116. Moreover, provisioning can include configuringthe paired device 120 b number, configuring a pairing duration timeout,or enabling a no timeout option. Such provisioning information can bestored as provisioning data 216 on the pairing server 112.

At step 408, a determination can be made as to whether a call has beenplaced from or received for the pairing communication device 120 a.Where a call is placed from the pairing communication device 120 a, theDDP application 116 is origination sequenced before any other sequencedapplications 108 (step 412). The origination sequencing is then paused,and a call is placed to the paired communication device 120 b with arequest for an SDP offer from the paired communication device 120 b, andcausing the paired device 120 b to ring (step 416). When the user 122answers the call on the paired device 120 b (or after an auto answer ifthe paired device 120 b is capable), the called party destinationcommunication device 120 c will ring (step 420). The calledcommunication device 120 c displays caller line identification relatedto the user 122. For example, where the pairing device 120 a is theuser's 122 primary device 120, caller ID information associated with thepairing device 120 a is displayed by the called communication device 120c. Ring back is provided to both the pairing 120 a and the paired 120 bcommunication devices. Also, if early media is played from thedestination, the user 122 will hear it on the paired device 120 b, whilehearing ring back on the pairing device 120 a.

When the called party answers the call at the called communicationdevice 120 c, an audio/video media path is established between thepaired communication device 120 b and the called party communicationdevice 120 c (step 424). The pairing device 120 a will also have anestablished call with the called communication device 120 c, but withoutany media, allowing for further call control to be exercised by thecalling communication device 120 a. More particularly, a call signalingpath can be established to the pairing communication device 120 a. Boththe pairing communication device 120 a and the paired communicationdevice 120 b show the name and number associated with the calledcommunication device 120 c. If the call is dropped from the pairingdevice 120 a, the paired device 120 b or called party device 120 c, allparties will drop from the call.

Where an incoming call is placed to a pairing communication device 120a, both the pairing communication device 120 a and the pairedcommunication device 120 b ring, and both the pairing 120 a and paired120 b communication devices show the caller name and number (step 428).If the user 122 answers the call on the pairing communication device 120a, the paired communication device 120 b will stop ringing and anaudio/video media path is established between the pairing communicationdevice 120 a and the caller device 120 c. The call is established as ifthere were no pairing configured. In an alternative embodiment, thepaired device 120 b may be auto-answered if the user 112 answers theincoming call on the pairing device 120 a. However, if the user answersthe call on the paired communication device 120 b, the media path isestablished between the paired communication device 120 b, and thecalling communication device 120 c (step 432). The call is alsoestablished, for example after an auto answer function is performed, onthe pairing communication device 120 a, but without media, for furthercall control. In addition, the DDP application 116 is sequenced afterother sequenced applications when a call is received at a paired device.If the call is dropped from the pairing communication device 120 a, thepaired communication device 120 b, or the calling communication device120 c, all communication devices 120 will drop from the call.

At step 436, a determination can be made as to whether the call has beenterminated. Once the call is terminated, the process ends.

Embodiments of the present disclosure can provide for the pairing of anycommunication device 120 with any other audio/video communication device120. In addition, pairing as disclosed herein enables call control to bemaintained on a pairing communication device 120 a, while having themedia path established with the paired communication device 120 b.Moreover, this is accomplished without media splitting or mediaswitching between the pairing 120 a and paired 120 b communicationdevices. The other party to the call is not aware of the pairing.

The paired device can be identified as part of provisioning data 216 by,for example but without limitation, an enterprise canonical or E.164format. In addition to identifying pairing 120 a and paired 120 bcommunication devices, a user 122 can configure other parametersassociated with pairing. Examples of such parameters include a pairingduration timeout. In addition, the ability to pair communication devices120 can be controlled through the assignment of user service levels. Forexample, pairing may be allowed only if a device to be paired has a userservice level that is lower than or equal to the user service level ofthe user 122 and/or the pairing communication device 120 a. Inaccordance with still other embodiments, if a communication device 120is already paired to another communication device, a user 122 with ahigher user service level than the user who initiated the in-placepairing can force the un-pairing of the user with the lower user servicelevel. During ringing time, for a pairing communication device 120 aoriginated call, the pairing communication device 120 a displays the farend number only, the paired communication device 120 b displays amessage such as “AUS DDP Service”, while the far end communicationdevice 120 c shows the name/number information of the pairingcommunication device 120 a. During ringing time for an incoming call tothe pairing communication device 120 a, both the pairing 120 a andpaired 120 b communication devices may be configured to show the far endname and number, while the far end communication device 120 c shows thepairing communication device 120 a number. This display of far end nameand number is not necessary and may not be performed in all instances.

When a call is established, both the pairing 120 a and paired 120 bcommunication devices show a far end name and number, while the far endcommunication device 120 c shows the pairing communication device 120 aname and number. In addition, while pairing is provisioned, a calloriginated by the paired communication device 120 b can be controlledusing the pairing communication device 120 a.

The foregoing discussion of the invention has been presented forpurposes of illustration and description. Further, the description isnot intended to limit the invention to the form disclosed herein.Consequently, variations and modifications commensurate with the aboveteachings, within the skill or knowledge of the relevant art, are withinthe scope of the present invention. The embodiments describedhereinabove are further intended to explain the best mode presentlyknown of practicing the invention and to enable others skilled in theart to utilize the invention in such or in other embodiments and withvarious modifications required by the particular application or use ofthe invention. It is intended that the appended claims be construed toinclude alternative embodiments to the extent permitted by the priorart.

The invention claimed is:
 1. A communication system, comprising: a firstcommunication device; a second communication device; a pairing server,including: a processor; and data storage, including: applicationprogramming executable by the processor to establish an applicationsequence for a first call with respect to a first communication device;provisioning data, wherein the provisioning data includes a record of apairing between the first and second communication devices; acommunication server, including: a processor; and data storage,including: at least a first sequenced application, wherein the at leasta first sequenced application is applied to the first call, wherein thefirst call includes the first communication device, wherein the firstcall is placed to the first communication device or from one of thefirst communication device and the second communication device, andwherein a media stream for the first call is provided to the secondcommunication device.
 2. The system of claim 1, wherein a control signalis provided with respect to the first communication device while thefirst call is in progress.
 3. The system of claim 2, further comprising:a third communication device, wherein caller ID information for thefirst communication device is used for at least one of applicationprocessing and display to the second communication device.
 4. Acommunication system, comprising: a pairing server, including: aprocessor; and data storage, including: application programmingexecutable by the processor to establish an application sequence for afirst call with respect to a first communication device; provisioningdata, wherein the provisioning data includes a record of a pairingbetween the first communication device and a second communicationdevice; and a communication server, including: a processor; and datastorage, including: at least a first sequenced application, wherein theat least a first sequenced application is applied to the first call,wherein the first call includes the first communication device, whereinthe first call is placed to the first communication device or from oneof the first communication device and the second communication device,and wherein a media stream for the first call is provided to the secondcommunication device.
 5. The communication system of claim 4, wherein amedia session is established between the second communication device anda third communication device as part of the call, wherein media is notprovided to the first communication device; and wherein the call iscontrolled by the first communication device.
 6. The communicationsystem of claim 4, wherein the application sequence corresponds to anorigination application sequence and wherein at least one application inthe origination application sequence is configured to apply originationrestrictions on the call to the second communication device.
 7. Thecommunication system of claim 6, wherein establishing a media sessionincludes providing a session description protocol descriptor associatedwith the second communication device to a third communication device. 8.The communication system of claim 7, wherein a session descriptionprotocol descriptor associated with the first communication device isnot provided to the third communication device.
 9. The communicationsystem of claim 8, wherein the session description protocol descriptorof the first communication device is replaced with the sessiondescription protocol descriptor of the second communication device. 10.The communication system of claim 9, wherein identification informationassociated with the first communication device is used for at least oneof application processing and display to the second communicationdevice.
 11. The communication system of claim 10, wherein the call isplaced from the third communication device to the first communicationdevice, wherein the call is received by the first and secondcommunication devices, and wherein the call is answered at the secondcommunication device.
 12. The communication system of claim 10, whereinthe call is placed from the third communication device to the firstcommunication device, wherein the call is auto-answered on the secondcommunication device when the call is answered at the firstcommunication device.
 13. The communication system of claim 5, whereinthe call is placed from the first communication device to the thirdcommunication device.
 14. The communication system of claim 13, whereinthe call is placed by a first user from the first communication device,and wherein the first user provides at least audible input to andreceives audible output from the second communication device.
 15. Thecommunication system of claim 14, wherein the first communication deviceis placed in far end hold.
 16. The communication system of claim 13,wherein ringback is played on the second communication device.
 17. Thecommunication system of claim 13, wherein a slow start INVITE isutilized and no ringback is played on either the first communicationdevice or the second communication device.
 18. The communication systemof claim 5, wherein the call is terminated in response to any one of thefirst communication device, the second communication device, and thethird communication device dropping the call.
 19. A communicationsystem, comprising: a pairing server, including: a processor; and datastorage, including: application programming executable by the processorto establish an application sequence for a first call with respect to afirst communication device; provisioning data, wherein the provisioningdata includes a record of a pairing between the first communicationdevice and a second communication device; and a communication server,including: a processor; and data storage, including: at least a firstsequenced application, wherein the at least a first sequencedapplication is applied to the first call, wherein the first callincludes the first communication device, wherein the first call isplaced to the first communication device or from one of the firstcommunication device and the second communication device, and wherein amedia stream for the first call is provided to the second communicationdevice and not to the first communication device.
 20. The communicationsystem of claim 19, wherein the first call is one of originated from thefirst communication device to a third communication device or directedto the first communication device from a third communication device,wherein a session description protocol (SDP) offer is requested from thesecond communication device in response to the first call, wherein theSDP offer is utilized from the second communication device for the firstcall, wherein the first communication device is placed on hold for atleast a portion of the first call, wherein a first sequenced applicationassociated with the first communication device is applied to the firstcall, and wherein a second sequenced application associated with thesecond communication device is applied to the first call.